package com.isoftstone.project.system.dict.service.impl;

import java.util.List;

import com.isoftstone.project.system.domain.SysDict;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.isoftstone.project.system.dict.mapper.DictMapper;
import com.isoftstone.project.system.dict.domain.Dict;
import com.isoftstone.project.system.dict.service.IDictService;
import com.isoftstone.framework.domain.Page;
import com.isoftstone.common.utils.text.Convert;

/**
 * 数据字典Service业务层处理
 *
 * @author guoX
 * @date 2021-02-01
 */
@Service
public class DictServiceImpl implements IDictService {
    @Autowired
    private DictMapper dictMapper;

    /**
     * 查询数据字典
     *
     * @param dictid 数据字典ID
     * @return 数据字典
     */
    @Override
    public Dict getDictById(String dictid) {
        return dictMapper.getDictById(dictid);
    }

    /**
     * 查询数据字典列表
     *
     * @param page 分页参数
     * @return 数据字典
     */
    @Override
    public List<Dict> getDictlistPage(Page page) {
        return dictMapper.getDictlistPage(page);
    }

    /**
     * 新增数据字典
     *
     * @param dict 数据字典
     * @return 结果
     */
    @Override
    public int insertDict(Dict dict) {
                                                                                                                    return dictMapper.insertDict(dict);
    }

    /**
     * 修改数据字典
     *
     * @param dict 数据字典
     * @return 结果
     */
    @Override
    public int updateDict(Dict dict) {
                                                                                                                    return dictMapper.updateDict(dict);
    }

    /**
     * 删除数据字典对象
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    @Override
    public int deleteDictByIds(String ids) {
        return dictMapper.deleteDictByIds(Convert.toStrArray(ids));
    }

    /**
     * 删除数据字典信息
     *
     * @param dictid 数据字典ID
     * @return 结果
     */
    @Override
    public int deleteDictById(String dictid) {
        return dictMapper.deleteDictById(dictid);
    }


    @Override
    public List<SysDict> getDictByType(String type) throws Exception {
        return dictMapper.getDictByType(type);
    }

    @Override
    public SysDict getDictByTypeAndCode(String type, String code) throws Exception {
        return dictMapper.getDictByTypeAndCode(type,code);
    }
}
